#include <stdio.h>

int main()
{

   /* 打开文件
    char *__restrict __filename: 字符串表示要打开文件的路径和名称
    char *__restrict __modes: 字符串表示访问模式
        (1)"r": 只读模式 没有文件打开失败
        (2)"w": 只写模式 存在文件写入会清空文件,不存在文件则创建新文件
        (3)"a": 只追加写模式 不会覆盖原有内容 新内容写到末尾
        (4)"r+": 读写模式 文件必须存在 写入是从头一个一个覆盖
        (5)"w+": 读写模式 可读取,写入同样会清空文件内容或创建新文件
        (6)"a+": 读写追加模式 可读取,写入从文件末尾开始
    return: FILE * 结构体指针 表示一个文件 出错返回NULL
    FILE *fopen (const char *__restrict __filename,
            const char *__restrict __modes)
    */
   FILE *file = fopen("fprintfText.txt", "r");

   char buf[128] = {0};
   char buf2[128] = {0};
    /*
    char *__restrict __s: 接收读取的数据字符串
    int __n: 能够接收数据的长度
    FILE *__restrict __stream: 需要读取的文件
    return: 成功返回字符串 失败返回NULL(可以直接用于while)
    fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
    */
  
   // while (fgets(buf,sizeof(buf),file))
   // {
   //    printf("buf=%s", buf);
   // }
   char *str = fgets(buf,sizeof(buf),file);
   char *str2 = fgets(buf2,sizeof(buf2),file);
   printf("str=%s\n",str);
   printf("str2=%s\n",str2);
   printf("buf=%s\n",buf);
   printf("buf2=%s\n",buf2);
   
   fclose(file);

   return 0;
}